﻿using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Xml.Linq;
using Atendex.Containex;
using Atendex.Dominio.Interfaces;
using Atendex.Infraestrutura.Repositórios;

namespace Atendex.Web
{
    public partial class CadastrarAreaNegocio : System.Web.UI.Page
    {
        private RepositorioArea repArea = new RepositorioArea();

        protected void Page_Load(object sender, EventArgs e)
        {

        }

        protected void btnSalvar_Click(object sender, EventArgs e)
        {
            try
            {
                IArea area = Container.CriarAreaNegocio(txtNome.Text);
                area.Responsaveis.Add(
                    Container.CriarReponsavel(txtNome.Text, txtEmail.Text));
                repArea.Salvar(area);
                ShowMensagem("Área de negócio cadastrada com sucesso.");
                LimparCampos();
            }
            catch (RepositorioException ex)
            {
                ShowMensagem("Houve um erro ao salvar: " + ex.Message);
            }
        }

        private void LimparCampos()
        {
            txtNome.Text = "";
            txtEmail.Text = "";
        }

        private void ShowMensagem(string mensagem)
        {
            lblMensagem.Text = mensagem;
            lblMensagem.Visible = true;
        }
    }
}
